
// export const attrValueEditCols = [
//     {name:'image', title:'封面图'},
//     {name:'cost_price', title:'成本价'},
//     {name:'ot_price', title:'市场价'},
//     {name:'price', title:'售价'},
//     {name:'stock_num', title:'库存'},
//     // {name:'weight', title:'重量'},
//     // {name:'volume', title:'体积'},
//     {name:'bar_code', title:'编号'},
// ]

export const skuEditCols = [
    {name:'image', title:'封面图'},
    {name:'cost_price', title:'成本价'},
    {name:'line_price', title:'市场价'},
    {name:'price', title:'售价'},
    {name:'stock', title:'库存'},
    {name:'weight', title:'重量'},
    {name:'volume', title:'体积'},
    {name:'goods_no', title:'编号'},
]


export const makeGoodsSkus = (specs: any[]) => {
    let skus : any[] = []
    for(let index in specs){
        const vo = specs[index]
        if(vo.values.length < 1){   // 如果规格值为空，则不生成这个规格
            continue
        }

        if(skus.length==0){   // 列表为空，表格的第一行，直接插入数据
            for(let voo of vo.values){ // 当前规格的值
                let row: any = {}
                // 将第一个规格值按照数据库的存储格式存入sku中
                row.specRels = [{
                    spec_id: vo.vir_id,
                    spec_value_id: voo.vir_id,
                    spec_value: voo.value,
                }]
                for (let col of skuEditCols) {
                    row[col.name] = ''
                }
                skus.push(row)
                // skus.push(...skuEditCols)
            }

        }else{ // 此时列表不为空，从第二行开始的写入规格
            // 新表格的行
            let rows : any[] = []

            // 循环取出table中的每一行数据
            for(let tr of skus){

                // 将行数据转为字符串，消除引用
                let trStr = JSON.stringify(tr)
                for(let voo of vo.values){

                    // 将当前行按照规格值值进行拆分，形成多行，存入rows中，替换掉当前行
                    let row = JSON.parse(trStr)
                    // 对当前行的sku追加新的规格值
                    row.specRels.push({
                        spec_id:vo.vir_id,
                        spec_value_id: voo.vir_id,
                        spec_value: voo.value,
                    })
                    // 将新的行存入rows中
                    rows.push(row)
                }
            }

            // 用rows取代原来的table
            skus = rows
        }

    }

    return skus
}

// export const makeAttrValues = (attrs:any[]) => {
//     let paStr = JSON.stringify(attrs)
//     attrs = JSON.parse(paStr)
//
//     let table = []     //  将规格值存入数组
//
//     for(let vo of attrs){
//
//         if(vo.values.length < 1){   // 如果规格值为空，则不生成这个规格
//             continue
//         }
//
//         if(tool.isEmpty(table)){   // 表格的第一行，直接插入数据
//             for(let voo of vo.values){ // 当前规格的值
//                 let row: any = {}
//                 row.sku = [voo] // 将第一个规格值，以数组的形式存入字段sku中
//                 table.push(row)
//             }
//
//         }else{ // 此时table不为空，从第二行开始的写入规则
//
//             // 新表格的行
//             let rows = []
//
//             // 循环取出table中的每一行数据
//             for(let tr of table){
//
//                 // 将行数据转为字符串，消除引用
//                 let trStr = JSON.stringify(tr)
//                 for(let voo of vo.values){
//
//                     // 将当前行按照规格值值进行拆分，形成多行，存入rows中，替换掉当前行
//                     let row = JSON.parse(trStr)
//                     // 对当前行的sku追加新的规格值
//                     row.sku.push(voo)
//                     // 将新的行存入rows中
//                     rows.push(row)
//                 }
//             }
//
//             // 用rows取代原来的table
//             table = rows
//
//         }
//
//     }
//
//     // 对形成的table进行再处理，在每行加入可以编辑的区域
//
//     let lastTable:any[] = []
//     const editKeys: any = {}
//     for(let vo of attrValueEditCols){
//         editKeys[vo.name] = ''
//     }
//     table.forEach((vo, index, arr) => {
//         lastTable.push(Object.assign(vo, editKeys))
//     })
//
//     return lastTable
// }
